package com.blog.admin.dao;

import java.util.List;

import com.blog.admin.bean.Menu;
import com.blog.admin.bean.Role;
import com.blog.admin.bean.RoleMenuMapping;

public interface MenuMapper {

	/**
	 * @todo 查询所有菜单
	 * @author fg
	 * @date 2016年1月21日
	 */
	List<Menu> selectAllMenu();
	
	
	/**
	 * @todo 通过角色查询一级菜单
	 * @author fg
	 * @date 2016年1月21日
	 */
	List<Menu> selectMenuOneByRole(Role role);

	/**
	 * @todo 通过角色查询二级菜单
	 * @author fg
	 * @date 2016年1月21日
	 */
	List<Menu> selectMenuTwoByRole(Role role);
	
	/**
	 * @todo 查询所有一级菜单
	 * @author fg
	 * @date 2016年1月27日
	 */
	List<Menu> selectParentMenu();
	
	/**
	 * @todo 添加菜单
	 * @author fg
	 * @date 2016年1月27日
	 */
	Integer insertMenu(Menu menu);
	
	/**
	 * @todo 查询子菜单
	 * @author fg
	 * @date 2016年1月27日
	 */
	List<Menu> selectChildrenMenuByMenu(Menu menu);
	
	/**
	 * @todo 通过id查找菜单
	 * @author fg
	 * @date 2016年1月27日
	 */
	Menu selectMenuByMenuId(Integer id);
	
	/**
	 * @todo 更新菜单
	 * @author fg
	 * @date 2016年1月27日
	 */
	Integer updateMenu(Menu menu);
	
	/**
	 * @todo 通过角色id查询该角色所有的菜单
	 * @author fg
	 * @date 2016年1月28日
	 */
	List<Menu> selectAllMenuByRoleId(Integer id);
	
	
	/**
	 * @todo 删除菜单
	 * @author fg
	 * @date 2016年3月15日
	 */
	Integer deleteMenuById(Integer id);
	

}